package com.chongxinlaiguo.mapstruct.dto.resp.remote;

import lombok.Data;


/**
 * 扩展字段
 */
@Data
public class ExtendInfoRemoteRespDTO {

    /**
     * 原交易金额 最大长度12位，单位：分
     */
    private Long originalTransactionAmount;

    /**
     * 交易日期 格式：yyyyMMdd
     */
    private String transactionDate;

    /**
     * 优惠金额，用于对账
     */
    private Long discountAmount;

    /**
     * 小程序支付需要的返回信息
     */
    // private String payRequest;
    private PayRequestDTO payRequest;

    @Data
    public static class PayRequestDTO {
        // 微信小程序需要的数据
        private String timeStamp;
        private String paySign;
        private String appId;
        private String nonceStr;

        /**
         * 请求渠道的泛化数据
         */
        private String requestData;

        /**
         * 渠道配置：主要是做一些秘钥配置
         */
        private ChannelConfig channelConfig;
    }


    /**
     * 前端需要的配置
     */
    @Data
    public static class ChannelConfig {
        /**
         * 渠道的关键信息
         */
        private String channelKey;

        /**
         * 渠道秘钥
         */
        private String channelSecret;

        /**
         * 渠道商户号
         */
        private String merchantId;

        /**
         * 泛化的标志位，为了做一些开关控制
         */
        private Boolean switchFlag;
    }
}
